package com.zrwl.poscloud.xo.vo;

import com.zrwl.poscloud.commons.validator.annotion.NotBlank;
import com.zrwl.poscloud.commons.validator.annotion.Range;
import com.zrwl.poscloud.commons.validator.group.Insert;
import com.zrwl.poscloud.commons.validator.group.Update;
import com.zrwl.poscloud.commons.vo.BaseVO;
import lombok.Data;

import java.util.List;

/**
 * CompanyVO
 *
 * @author: liusitong
 * @create: 2019-12-03-22:29
 */
@Data
public class CompanyVO extends BaseVO<CompanyVO> {
    /**
     * 平台uuid 暂时理解为外部对接的id，暂时不启用
     */
    private String uuid;

    /**
     * 简称
     */
    @NotBlank(groups = {Insert.class, Update.class})
    private String shortName;


    /**
     * 完整名称
     */
    private String fullName;
    /**
     * 类型 目前只有：1、pos商户
     */
    private int type;


    /**
     * 邮箱
     */
    private String email;


    /**
     * 手机
     */
    private String mobile;


    /**
     * 卡机秘钥
     */
    @NotBlank(groups = {Insert.class, Update.class})
    private String posPwd;
    /**
     * 卡机开始扇区
     */
    private int startDisk;
    /**
     * 卡片A密码
     */
    private String cardPwd;

    /**
     * 地址
     */
    private String address;

    /**
     * 简介最多150字
     */
    private String summary;

    /**
     * 简介最多150字
     */
    private String merchantUid;
    private List<String> merchantUidList;

    /**
     * 5位编码
     */
    @NotBlank(groups = {Insert.class, Update.class})
    @Range(groups = {Insert.class, Update.class}, max = 5, min = 5)
    private String companyCode;


    /**
     * 开启邮件通知：  0：关闭， 1：开启
     */
    private int startEmailNotification;

    private String companyDictTypeUid;

//    private List<House> houseList;

    private String person;

    private String area;

    private int level;
    private String coverCode;//封面
    private String qrCode;//二维码
    private int dimension;
    private String merchantName;
    private String merchantCode;
    private String companyName;
    private int fromType;
    private String fromUid;
    private int ownerType;
    private String lngLat;

    private String reverseFormUid;
    private int localHoldKey;
    private String companyDeptModeUid;
    private String jsonStr;
    private String merchantCoverCode;
    private String merchantQrCode;
    private int memberConfig;
    private int userCount;
}
